Skip to content

Conversation

@mortkever
Copy link
Contributor

Constructors or destructors does not necessarily have arguments. This causes an assertion error in getConstructorThisPtr where the arguments are queried. The result of getConstructorThisPtr is used to check if the "This" pointers are the same. And because the function connectInheritEdgeViaCall returns if this is not the case, we can simply return early and avoid the error.

For posterity: this issue arose when running SVF on 483.Xalancbmk for the destructor of XSLTinit.

Add check for empty caller argument size in constructor/destructor case
@codecov
Copy link

codecov bot commented Feb 5, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 64.14%. Comparing base (85e1753) to head (f17b4e4).
⚠️ Report is 2 commits behind head on master.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1788      +/-   ##
==========================================
- Coverage   64.14%   64.14%   -0.01%     
==========================================
  Files         243      243              
  Lines       24624    24626       +2     
  Branches     4657     4658       +1     
==========================================
+ Hits        15796    15797       +1     
- Misses       8828     8829       +1     
Files with missing lines Coverage Δ
svf-llvm/lib/CHGBuilder.cpp 83.39% <100.00%> (-0.24%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@yuleisui yuleisui merged commit 6ee4a20 into SVF-tools:master Feb 6, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants